package org.wzy.design.patterns.template;

// 冲饮料
public abstract class Bevegrage {
	
	// 不能被重写
	public final void create() {
		
		// 1.把水烧开
		boilWater();
		
		// 2.把杯子准备好，原料放入杯子中(原料不知道要加什么，因此用抽象方法让用户自己实现)
		pourInCup();
		
		// 3.用水冲泡
		brew();
		
		// 4.添加辅料(辅料不知道要加什么，因此用抽象方法让用户自己实现)
		addAccessories();
		
	}
	
	public abstract void pourInCup();
	
	public abstract void addAccessories();

	public void boilWater() {
		System.out.println("烧水至100°C就可以起锅了。");
	}
	
	public void brew() {
		System.out.println("将开水倒入杯子中......");
	}
}
